home *** CD-ROM | disk | FTP | other *** search
/ Experimental BBS Explossion 3 / Experimental BBS Explossion III.iso / games / nhak_src.zip / VERSION.C < prev    next >
C/C++ Source or Header  |  1993-03-16  |  4KB  |  223 lines

  1. /*    SCCS Id: @(#)version.c    3.0    89/06/12
  2. /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
  3. /* NetHack may be freely redistributed.  See license for details. */
  4.  
  5. #include    "hack.h"
  6. #include    "date.h"
  7. #ifndef BETA
  8. #if defined(MSDOS) && !defined(AMIGA)
  9. # include    "patchlev.h"
  10. #else
  11. # include    "patchlevel.h"
  12. #endif
  13. #endif
  14.  
  15. int
  16. doversion(){
  17.  
  18. #ifdef BETA
  19.     pline("%s NetHack Beta Version %s - last build %s.",
  20. #else
  21.     pline("%s NetHack Version %s Patchlevel %d - last build %s.",
  22. #endif
  23. #if defined(MSDOS)
  24. # if defined(TOS)
  25.         "ST",
  26. # else
  27. #  if defined(AMIGA)
  28.         "Amiga",
  29. #  else
  30. #   if defined(OS2)
  31.         "OS/2",
  32. #   else
  33.         "PC",
  34. #   endif
  35. #  endif
  36. # endif
  37. #endif
  38. #ifdef MACOS
  39.         "Macintosh",
  40. #endif
  41. #ifdef UNIX
  42.         "Unix",
  43. #endif
  44. #ifdef VMS
  45.         "VMS",
  46. #endif
  47.         VERSION,
  48. #ifndef BETA
  49.         PATCHLEVEL,
  50. #endif
  51.         datestring);
  52.     return 0;
  53. }
  54.  
  55. #define Next_opt(x) if (next_opt(x)) goto quit;
  56. #define Page_line(x) if (page_line(x)) goto quit;
  57.  
  58. int
  59. doextversion()
  60. {
  61.     set_pager(0);
  62.     (void)page_line("");
  63.     Page_line("Options compiled into this version of NetHack");
  64.     Page_line("(in no particular order):");
  65.     Page_line("");
  66. #ifdef POLYSELF
  67.     Next_opt("self-polymorphing, ");
  68. #endif
  69. #ifdef THEOLOGY
  70.     Next_opt("theology, ");
  71. #endif
  72. #ifdef SOUNDS
  73.     Next_opt("sounds, ");
  74. #endif
  75. #ifdef KICK
  76.     Next_opt("kicking, ");
  77. #endif
  78. #ifdef THRONES
  79.     Next_opt("thrones, ");
  80. #endif
  81. #ifdef FOUNTAINS
  82.     Next_opt("fountains, ");
  83. #endif
  84. #ifdef SINKS
  85.     Next_opt("sinks, ");
  86. #endif
  87. #ifdef ALTARS
  88.     Next_opt("altars, ");
  89. #endif
  90. #ifdef WALLIFIED_MAZE
  91.     Next_opt("fancy mazes, ");
  92. #endif
  93. #ifdef REINCARNATION
  94.     Next_opt("Rogue level, ");
  95. #endif
  96. #ifdef STRONGHOLD
  97.     Next_opt("special levels, ");
  98. #endif
  99. #ifdef ORACLE
  100.     Next_opt("oracle, ");
  101. #endif
  102. #ifdef MEDUSA
  103.     Next_opt("Medusa, ");
  104. #endif
  105. #ifdef KOPS
  106.     Next_opt("Kops, ");
  107. #endif
  108. #ifdef ARMY
  109.     Next_opt("armies, ");
  110. #endif
  111. #ifdef WORM
  112.     Next_opt("long worms, ");
  113. #endif
  114. #ifdef GOLEMS
  115.     Next_opt("golems, ");
  116. #endif
  117. #ifdef INFERNO
  118.     Next_opt("inferno, ");
  119. #endif
  120. #ifdef SEDUCE
  121.     Next_opt("seduction, ");
  122. #endif
  123. #ifdef TOLKIEN
  124.     Next_opt("Tolkien extras, ");
  125. #endif
  126. #ifdef PROBING
  127.     Next_opt("wand of probing, ");
  128. #endif
  129. #ifdef WALKIES
  130.     Next_opt("leashes, ");
  131. #endif
  132. #ifdef SHIRT
  133.     Next_opt("Hawaiian shirt, ");
  134. #endif
  135. #ifdef MUSIC
  136.     Next_opt("music, ");
  137. #endif
  138. #ifdef TUTTI_FRUTTI
  139.     Next_opt("fruits, ");
  140. #endif
  141. #ifdef SPELLS
  142.     Next_opt("spells, ");
  143. #endif
  144. #ifdef NAMED_ITEMS
  145.     Next_opt("named items, ");
  146. #endif
  147. #ifdef ELBERETH
  148.     Next_opt("Elbereth, ");
  149. #endif
  150. #ifdef EXPLORE_MODE
  151.     Next_opt("explore mode, ");
  152. #endif
  153. #ifdef HARD
  154.     Next_opt("HARD, ");
  155. #endif
  156. #ifdef REDO
  157.     Next_opt("redo-commands, ");
  158. #endif
  159. #ifdef CLIPPING
  160.     Next_opt("screen clipping, ");
  161. #endif
  162. #ifdef TEXTCOLOR
  163.     Next_opt("color, ");
  164. #endif
  165. #ifdef DGK
  166.     Next_opt("Don Kneller's enhancements, ");
  167. #endif
  168. #ifdef OVERLAY
  169.     Next_opt("overlays, ");
  170. #endif
  171. #ifdef SHELL
  172.     Next_opt("shell command, ");
  173. #endif
  174. #ifdef MAIL
  175.     Next_opt("mail, ");
  176. #endif
  177. #ifdef NEWS
  178.     Next_opt("news file, ");
  179. #endif
  180. #ifdef COM_COMPL
  181.     Next_opt("command line completion, ");
  182. #endif
  183. #ifdef AMIGA_WBENCH
  184.     Next_opt("Amiga WorkBench support, ");
  185. #endif
  186. #ifdef WIZARD
  187.     Next_opt("wizard mode, ");
  188. #endif
  189. #ifdef LOGFILE
  190.     Next_opt("logfile, ");
  191. #endif
  192. #ifdef TERMLIB
  193.     Next_opt("termcap file, ");
  194. #endif
  195. #ifdef TERMINFO
  196.     Next_opt("terminfo, ");
  197. #endif
  198. #ifdef ANSI_DEFAULT
  199.     Next_opt("ANSI default terminal, ");
  200. #endif
  201. #ifdef COMPRESS
  202.     Next_opt("compress bones/level/save files, ");
  203. #endif
  204.     Next_opt("basic NetHack features");
  205.     Next_opt("");
  206.     set_pager(1);
  207.     return 0;
  208. quit:
  209.     (void) next_opt("\033");
  210.     set_pager(2);
  211.     return 0;
  212. }
  213.  
  214. #ifdef MSDOS
  215. int
  216. comp_times(filetime)
  217. long filetime;
  218. {
  219.     if(filetime < compiletime) return (1);
  220.     else return (0);
  221. }
  222. #endif
  223.